export interface MessageContent {
  type: 'text' | 'image_url' | 'file_url'
  text?: string
  image_url?: {
    url: string
  }
  name?: string
  url?: string
}

export interface Message {
  id: string
  role: 'user' | 'assistant' | 'system'
  content: string | MessageContent[]
  timestamp: Date
  isError?: boolean
}

export interface ChatSession {
  id: string
  userId: string
  title: string
  lastMessage?: string
  createdAt: Date
  updatedAt: Date
}

export interface FileUploadResult {
  name: string
  url: string
  type: string
}
